
'''
定义一个请求钩子，在进来之前得到request中携带的token。并开始验证token
'''

from flask import g,request
from comment.utils.tokens_pyjwt import verify_tokens

def jwt_request_auth():
    '''
    从request中获取token。并且验证token。验证成功之后把用户ID保持到g
    :return:
    '''
    g.user_id = None #定义一个变量
    # 前端代码是把token携带在请求头中
    token = request.headers.get('token')

    if token is not None:
        result = verify_tokens(token)
        if 'id' in result:  # 只要返回的字典中包含ID，验证成功。
            g.user_id = result['id']